// Problem: 
// Contest: 
// URL: 
// Memory Limit: 
// Time Limit: 
// #pragma GCC optimize("Ofast")
// #pragma GCC optimize("unroll-loops")
// #pragma GCC target("sse,sse2,sse3,ssse3,sse4,popcnt,abm,mmx,avx,avx2,tune=native")
#include<bits/stdc++.h>
using namespace std;
#define int long long
inline int read(){
	int s=0,w=1;
	char ch=getchar();
	while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}
	while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();
	return s*w;
}
signed main()
{
	string s;
	getline(cin,s);
	string t[10000];
	int x=s.size();
	int i=1;
	char c;
	while((c=getchar())!=EOF)
	{
		if(c!=' ')t[i]+=c;
		else 
		{
			i++;
		}
	}
	for(int j=1;j<=i;j++)
	{
		if(t[j]=="LEFT"&&x-1>=0)x--;
		if(t[j]=="RIGHT"&&x+1<=s.size())x++;
		if(t[j]=="S"&&t[j-1]=="CTRL")cout<<s<<endl;
		if(t[j][0]=='D'&&t[j-1]=="CTRL")
		{
			int si=t[j].size();
			int sum=0;
			if(j==i)
			{
				if(si==3)
				{
					sum=t[j][1]-'0';
				}
				else
				{
					si-=2;
					sum=0;
					for(int k=1;k<=si;k++)
					{
						sum=sum*10+t[j][k]-'0';
					}
				}
			}
			else
			{
				if(si==2)
				{
					sum=t[j][1]-'0';
				}
				else
				{
					si-=1;
					sum=0;
					for(int k=1;k<=si;k++)
					{
						sum=sum*10+t[j][k]-'0';
					}
				}
			}
			string tmp="";
			for(int k=1;k<=sum;k++)
			{
				tmp+=s[x-1];
			}
			s=s.substr(0,x-1)+tmp+s.substr(x-1);
			x+=sum;
		}
	}
	cout<<s;
	return 0;
}
